1. Field of the Invention
The present invention relates generally to the field of Graphical User Interfaces, and more particularly to a system and method for displaying and manipulating data objects associated with images.
2. Description of the Background Art
Computer use continues to grow among various groups of people having little or no computer training. As a result, a computer's ease of use, or user friendliness, is of vital importance in the market place.
Whether a computer is user friendly depends, for the most part, on its user interface. The user interface is the component of a computer through which a user interacts with the computer, and in general, includes an input device, an output device, and an interface program. The input device allows a user to issue commands or provide requested information to the computer The display device provides feedback to the user, for example requests for input or the display of certain results. The interface program interprets user input and generates output upon the output device.
One early command-driven user interface included a keyboard, for the user to provide input to the computer, and a display monitor for providing output to the user. In response to a command typed by the user, the interface program would initiate the execution of the indicated applications program by the computer. For several reasons, this command-driven user interface proved not to be very user friendly, especially to users with little or no computer training. One shortcoming of the command-driven interface was the requirement that the user memorize countless commands associated with various application programs. Typically, the commands also needed to be entered in a very precise manner. For example, a deviation as slight as the presence of an extra space or the incorrect case of a letter caused the interface program to be unable to match the command with the appropriate applications program.
These problems with the command-driven interface proved very frustrating to inexperienced users. In response, software designers developed what is known as a "Graphical User Interface" (GUI). In a GUI, the display monitor presents an image containing various types of objects, each object corresponding to a user-selectable item. The user interacts with the displayed image through the use of a pointing device such as a track ball or a mouse, which controls the position of a display cursor. When the user selects an object with the pointing device, an input command associated with the selected object is executed, thus avoiding syntactic user errors.
Generally, the image associated with a GUI is based on a familiar metaphor, such that the appearance of an object suggests the input command it represents. For example, Apple Computer's (Apple Computer, Inc., Cupertino, Calif.) graphical interface appears as a desk top blotter, where an object that appears as a trash can is used to delete, or throw away, files.
Objects that may be displayed within the context of a GUI include windows, menu bars, icons, and thumbnails. A window is a rectangular portion of the interface image dedicated to a specific application program. For example, a user can edit a document with a word processing program in a window. Generally, multiple windows can be open at one time, such that a user can switch from one application to another by simply "clicking" in the window running the desired application.
Menu bars generally contain menus of related commands associated with a currently running application. For example, if the current application is a word processing program, the edit menu would typically include such objects as "cut", "copy", and "paste". If a user clicked on the object "edit" in the menu bar, the contents of the edit menu would be displayed for selection. The selection of one of the objects (cut, copy or paste) would cause the execution of the respective command.
An icon is generally a graphical object whose appearance suggests an application program with which the icon is associated. When the user clicks on an icon, the interface program generates the command necessary to begin execution of the associated application program.
A thumbnail is a graphical object that is associated with a particular document or image file. Selecting the thumbnail causes the associated document to be opened. Although similar in function, a thumbnail differs from an icon in at least one important respect. Thumbnail objects depict a portion of the actual data contained in the file they represent, whereas an icon is simply a static figure whose appearance merely suggests an associated file.
New devices and new application programs are constantly being developed, each with its own unique advantages and characteristics. As a result, new interfaces are needed so that users with little or no computer training can take advantage of the benefits offered by such developments. As these devices and applications become more complex, the need for a user friendly interface becomes even greater. The recent development of digital cameras, such as the Apple Quick Take 150, is one example of a new device requiring a computer user interface. Digital cameras capture an optical image by converting it into a digital image data set, and then storing the image data set in the digital camera's electronic memory. Digital cameras can record and store at least two image types, namely, "stills" and "groups." Stills contain a single image data set, and are analogous to a conventional photograph. Groups contain multiple image data sets that bear some relationship to one another. If the image data sets in a group have a temporal, spatial, or some other physical relationship, then the group is called a natural group. Natural groups are analogous to movies or time lapse photography, where successive images have a specific time relationship. Other examples of natural groups include panoramic groups and depth of field groups. A panoramic group contains individual images of adjacent subject matter, which can then be "stitched" together to form a coherent panoramic scene. A depth of field group contains images of the same subject, but with varied depths of field. The individual images can then be combined to produce a single image, wherein the foreground, the subject, and the background are all in focus.
After the image data sets are recorded by a camera, they can be stored for some finite amount of time in the digital camera's electronic memory, but they must eventually be transferred to a nonvolatile data storage device. Typically, the transfer, display, and editing of the collected image data sets are accomplished by connecting the digital camera to a computer system such that the camera's memory can be accessed.
Unfortunately, in the prior art, a user-friendly interface that provides for the display and manipulation of image data sets, whether stored upon a camera or a nonvolatile data storage device, does not exist. What is needed is a system and method for providing a user-friendly interface for displaying and manipulating image data sets.